<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  
  <title>Matrix207&#39;s Blog</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta property="og:type" content="website">
<meta property="og:title" content="Matrix207's Blog">
<meta property="og:url" content="http://yoursite.com/page/15/index.html">
<meta property="og:site_name" content="Matrix207's Blog">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Matrix207's Blog">
  
    <link rel="alternate" href="/atom.xml" title="Matrix207&#39;s Blog" type="application/atom+xml">
  
  
    <link rel="icon" href="/favicon.png">
  
  
    <link href="//fonts.googleapis.com/css?family=Source+Code+Pro" rel="stylesheet" type="text/css">
  
  <link rel="stylesheet" href="/css/style.css">
  

</head>

<body>
  <div id="container">
    <div id="wrap">
      <header id="header">
  <div id="banner"></div>
  <div id="header-outer" class="outer">
    <div id="header-title" class="inner">
      <h1 id="logo-wrap">
        <a href="/" id="logo">Matrix207&#39;s Blog</a>
      </h1>
      
    </div>
    <div id="header-inner" class="inner">
      <nav id="main-nav">
        <a id="main-nav-toggle" class="nav-icon"></a>
        
          <a class="main-nav-link" href="/">Home</a>
        
          <a class="main-nav-link" href="/archives">Archives</a>
        
      </nav>
      <nav id="sub-nav">
        
          <a id="nav-rss-link" class="nav-icon" href="/atom.xml" title="Flux RSS"></a>
        
        <a id="nav-search-btn" class="nav-icon" title="Rechercher"></a>
      </nav>
      <div id="search-form-wrap">
        <form action="//google.com/search" method="get" accept-charset="UTF-8" class="search-form"><input type="search" name="q" results="0" class="search-form-input" placeholder="Search"><button type="submit" class="search-form-submit">&#xF002;</button><input type="hidden" name="sitesearch" value="http://yoursite.com"></form>
      </div>
    </div>
  </div>
</header>
      <div class="outer">
        <section id="main">
  
    <article id="post-use-rsync" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/06/use-rsync/" class="article-date">
  <time datetime="2013-03-05T16:00:00.000Z" itemprop="datePublished">2013-03-06</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/06/use-rsync/">use rsync</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <h3 id="rsync-文件同步"><a href="#rsync-文件同步" class="headerlink" title="rsync 文件同步"></a>rsync 文件同步</h3><hr>
<h2 id="Linux-Server-192-168-1-63"><a href="#Linux-Server-192-168-1-63" class="headerlink" title="Linux Server : 192.168.1.63"></a>Linux Server : 192.168.1.63</h2><ol>
<li><p>vim /etc/rsyncd.conf</p>
<pre><code># /etc/rsyncd.conf
#全局配置部分
secrets file = /etc/rsyncd.secrets
read only = no
write only = no
list = yes
uid = root
gid = root
charset=UTF-8

#允许指定的主机连接
#hosts allow = 192.168.1.52 172.18.1.50

#允许任何主机
host allow = * 

#禁止指定的主机连接
#hosts deny = 192.168.1.1/24

use chroot = no
max connections = 10
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock

#模块配置
[rsynctest]
comment = sync directory
path = /home/dennis/Documents
auth users = rsync
secrets file = /etc/rsyncd.secrets
</code></pre></li>
<li><p>create password file </p>
<pre><code>echo &quot;rsync:rsync&quot; &gt; /etc/rsyncd.secrets
chown root:root /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets    
</code></pre></li>
<li><p>start rsync</p>
<pre><code># 查询是否存在rsync进程
ps aux | grep rsync
# 启动rsync
rsync --daemon
# 检查 rsync 使用的873端口正常监听
netstat -an | grep 873
</code></pre></li>
</ol>
<h2 id="Linux-Clint-192-168-1-52"><a href="#Linux-Clint-192-168-1-52" class="headerlink" title="Linux Clint : 192.168.1.52"></a>Linux Clint : 192.168.1.52</h2><ol>
<li><p>create password file</p>
<pre><code># 该步骤主要用于解决同步过程需要手动输入密码问题
echo &quot;rsync&quot; &gt; /etc/rsyncd.secrets
chown root:root /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets
</code></pre></li>
<li><p>download</p>
<pre><code># 需要手动输入密码
rsync -vzrtopg --delete --progress rsync@192.168.1.63::rsynctest /root/rsyntest/

# 不需要输入密码
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.secrets rsync@192.168.1.63::rsynctest /root/rsyntest/
</code></pre></li>
<li><p>upload</p>
<pre><code># 需要手动输入密码
rsync -vzrtopg --delete --progress ./*.log rsync@192.168.1.63::rsynctest

# 不需要输入密码
rsync -vzrtopg --delete --progress --password-file=/etc/rsyncd.secrets ./*.log rsync@192.168.1.63::rsynctest
</code></pre></li>
</ol>
<h2 id="Windows-Clint-192-168-1-42"><a href="#Windows-Clint-192-168-1-42" class="headerlink" title="Windows Clint : 192.168.1.42"></a>Windows Clint : 192.168.1.42</h2><ol>
<li><p>Install cwRsync_2.0.10 </p>
</li>
<li><p>create password file</p>
<pre><code>mkdir d:/rsync
echo &quot;rsync&quot; &gt; d:/rsync/rsyncd.secrets
</code></pre></li>
<li><p>change to then install directory</p>
<pre><code>cd C:\Program Files\cwRsync\bin 
</code></pre></li>
<li><p>download</p>
<pre><code>rsync -vzrtopg --progress --delete --password-file=/cygdrive/d/rsync/rsyncd.secrets rsync@192.168.1.63::rsynctest /cygdrive/d/rsync
</code></pre></li>
<li><p>upload</p>
<pre><code>rsync -vzrtopg --progress --delete --password-file=/cygdrive/d/rsync/rsyncd.secrets /cygdrive/d/rsync rsync@192.168.1.63::rsynctest 
</code></pre></li>
</ol>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/06/use-rsync/" data-id="ciqqpe1ib003mnmpv6a51net3" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/rsync/">rsync</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-xml-parse" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/05/xml-parse/" class="article-date">
  <time datetime="2013-03-04T16:00:00.000Z" itemprop="datePublished">2013-03-05</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/language/">language</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/05/xml-parse/">xml parse</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>这里贴一个xml解析到shell脚本，主要使用了sed，awk，vi等命令的正则表达式。</p>
<p>xml.sh</p>
<pre><code>#!/bin/sh
################################################################################
# 解析xml配置文件
# 历史记录:
#   2013-03-05    v1.0    Dennis  Create
################################################################################

xml_file=/etc/mytest/tmp.xml

# function: set item value
setitemvalue ()
{
    if [ $# -lt 2 ]; then
        echo Usage: setitemvalue item value
        return 1
    fi

    # sed 中使用变量，要用单引号围起来
    case $1 in
        &quot;name&quot; | &quot;ip&quot; | &quot;port&quot;)
            #vi -e -s -c &quot;:%s#$1=\&quot;\S*\&quot;#$1=\&quot;$2\&quot;#g&quot; -c &quot;:wq&quot; $xml_file
            # 修改所有匹配行
            #sed -i &apos;s#&apos;$1&apos;=\&quot;\S*\&quot;#&apos;$1&apos;=&quot;&apos;$2&apos;&quot;#g&apos; $xml_file
            # 只修改第一个匹配行
            sed -i &apos;1,/&apos;$1&apos;/{s#&apos;$1&apos;=\&quot;\S*\&quot;#&apos;$1&apos;=&quot;&apos;$2&apos;&quot;#g}&apos; $xml_file 
            ;;
        *)
            #vi -e -s -c &quot;:%s#&lt;$1&gt;.*&lt;/$1&gt;#&lt;$1&gt;$2&lt;/$1&gt;#g&quot; -c &quot;:wq&quot; $xml_file
            sed -i &apos;s#&lt;&apos;$1\&gt;&apos;.*&lt;#&lt;&apos;$1&apos;\&gt;&apos;$2&apos;&lt;#g&apos; $xml_file 
            ;;
    esac
    return 0
}

# function: dispaly item value
show()
{
    # parse special item
    # 方式1, 可能出现重复行, 命令过长
      #name=`grep &quot;Remote name&quot; $xml_file | head -n 1 | awk &apos;{print $2}&apos; | cut -d&quot;=&quot; -f2 | cut -d&apos;&quot;&apos; -f2`
    # 方式2, 使用 -m 参数解决重复行问题，但整个命令比较长
      #name=`grep -m 1 &quot;Remote name&quot; $xml_file | awk &apos;{print $2}&apos; | cut -d&quot;=&quot; -f2 | cut -d&apos;&quot;&apos; -f2`
    # 方式3, 可能出现重复行
      #name=`sed -n &apos;/Remote name/p&apos; $xml_file | cut -d&apos;&quot;&apos; -f2`
    # 方式4, 解决重复行,并且简化命令
    name=`grep -m 1 &quot;Remote name&quot; $xml_file | cut -d&apos;&quot;&apos; -f2`
      ip=`grep -m 1 &quot;Remote name&quot; $xml_file | cut -d&apos;&quot;&apos; -f4`
    port=`grep -m 1 &quot;Remote name&quot; $xml_file | cut -d&apos;&quot;&apos; -f6`
    echo name:$name
    echo ip:$ip
    echo port:$port

    # parse general item
    awk -F&apos;&lt;|&gt;&apos; &apos;{if(NF&gt;3){print $2 &quot;:&quot; $3}}&apos; $xml_file
}

# function: help
help ()
{
    echo &quot;Usage:  xml.sh [--show] [--set] &quot;
    echo &quot;  --show display all item info &quot;
    echo &quot;  --set  set values of items &quot;
    echo &quot;    e.g: xml.sh --set ip=192.168.1.38 port=1394&quot;
}

# main
if [ $# -lt 1 ]; then
    help
    exit 1
else
    case $1 in
        &quot;--show&quot;)
            show
            ;;
        &quot;--set&quot;)
            # 删掉第一个参数
            shift
            # 循环所有参数
            for i in $* ; do
                item=`echo $i | cut -d&quot;=&quot; -f1`
                value=`echo $i | cut -d&quot;=&quot; -f2`
                if [ $item ] &amp;&amp; [ $value ]; then
                    setitemvalue $item $value
                else
                    echo parameters &quot;$i&quot; error!
                    exit 1
                fi
            done
            ;;
        *)
            help
            exit 1
            ;;
    esac
fi

exit 0
</code></pre><p>/etc/mytest/tmp.xml</p>
<pre><code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;xmltest&gt;
    &lt;Remote name=&quot;testpc&quot; ip=&quot;192.168.1.56&quot; port=&quot;1022&quot;/&gt;
    &lt;version&gt;3.6.12&lt;/version&gt;
    &lt;os&gt;Centos 5.2&lt;/os&gt;
    &lt;memory&gt;4.0&lt;/memory&gt;
    &lt;cpu&gt;3.8&lt;/cpu&gt;
&lt;/xmltest&gt;
</code></pre>
      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/05/xml-parse/" data-id="ciqqpe1i7003fnmpvfdrjbwuz" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/awk/">awk</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/sed/">sed</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/shell/">shell</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/vi/">vi</a></li><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/xml/">xml</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-30-linux-kernel-developers-in-30-weeks-sarah-sharp" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/04/30-linux-kernel-developers-in-30-weeks-sarah-sharp/" class="article-date">
  <time datetime="2013-03-03T16:00:00.000Z" itemprop="datePublished">2013-03-04</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/english/">english</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/04/30-linux-kernel-developers-in-30-weeks-sarah-sharp/">30 Linux Kernel Developers in 30 Weeks: Sarah Sharp</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>原文 <a href="https://www.linux.com/news/special-feature/linux-developers/593966-30-linux-kernel-developers-in-30-weeks-sarah-sharp" target="_blank" rel="external">30 Linux Kernel Developers in 30 Weeks: Sarah Sharp</a></p>
<blockquote>
<p>This is the third profile in our 30-week series that features a different Linux kernel developer each week. Last week we featured Thomas Gleixner, after beginning the series with Linus Torvalds. The profiles we publish throughout the rest of 2012 will help illustrate how these developers do their work, providing important insight on how to work with them and what makes them tick.</p>
</blockquote>
<p>这是30周30位Linux内核开发者系列的第三期。上周我们在首期的Linus Torvalds专访后介绍了Thomas Gleixner。在2012年余下时间中发表的这些文章将告诉大家他们是如何工作的，怎样与他们协同工作以及他们成功的原因。</p>
<blockquote>
<p>Name</p>
</blockquote>
<p>姓名</p>
<blockquote>
<p>Sarah Sharp</p>
</blockquote>
<p>Sarah Sharp</p>
<blockquote>
<p>What role do you play in the community and/or what subsystem(s) do you work on?</p>
</blockquote>
<p>你最社区中扮演什么角色或者负责哪个子系统的开发？</p>
<blockquote>
<p>I’m the Linux kernel xHCI driver maintainer. I own Linux USB 3.0 support, and I send my patches up to Greg Kroah-Hartman, who is the USB subsystem maintainer.</p>
</blockquote>
<p>我是Linux内核模块xHCI驱动的维护者。我负责Linux USB 3.0的开发支持，我会把补丁包提交给USB子系统维护者Grep Kroah-Hartman。</p>
<blockquote>
<p>Where do you get your paycheck?</p>
</blockquote>
<p>你的收入来源？</p>
<blockquote>
<p>I work in Intel’s Open Source Technology Center, along with a bunch of other cool Linux kernel developers.</p>
</blockquote>
<p>我在英特尔开源技术中心和一群很酷的Linux内核开发者一起工作，</p>
<blockquote>
<p>What part of the world do you live in? Why there?</p>
</blockquote>
<p>你在哪里生活？为什么？</p>
<blockquote>
<p>I live in Portland, Oregon. There’s a reason why we say, “Keep Portland Weird”. We have everything from Voodoo Donuts to mini-bike-riding “Zoo Bombers” to Powell’s, which is America’s largest book store. Portland is also really friendly to open source development. It’s home to OSCON (Open Source Convention), and there’s this great cross-pollination between Linux users and the bicycle community. The electronics maker community is pretty strong in Portland, too. Check out a Dorkbot meeting when you’re in town, or hang out with cool techie women at Code N Splode.</p>
</blockquote>
<p>我居住在俄勒冈州的波特兰。原因之一是“神奇的波特兰”。 波特兰是开源发展的朋友。是OSCON的故乡，同时是Linux用户群和车友相互交流的地方。电子产业在波特兰也很牛。？？？</p>
<blockquote>
<p>What are your favorite productivity tools for software development? What do you run on your desktop?</p>
</blockquote>
<p>你最喜欢的软件开发工具是什么？你一般用什么工具？</p>
<blockquote>
<p>Um, I’m pretty much a vim and mutt person. Software development is all text for me. As for what I run on my desktop, it’s Linux, of course. :) I run either Debian or Ubuntu on my boxes, and try to do all my work in Linux.</p>
</blockquote>
<p>我比较中意vim和mutt.软件开发都是文本化的。当然我的桌面系统是Linux。不是Debian就是Ubuntu，我所有的工作都是在Linux下进行的。</p>
<blockquote>
<p>How did you get involved in Linux kernel development?</p>
</blockquote>
<p>你是如何参与到Linux内核开发中的？</p>
<blockquote>
<p>My computer science professor, Bart Massey, was approached by Greg Kroah-Hartman, who was looking for a student to do a Linux USB project. Bart thought I would be a great fit, and was my faculty advisor for the “usbfs2” project. I worked on usbfs2 for Portland State University senior elective credits, and later as a paid project under the Intel Undergraduate Research Program.</p>
</blockquote>
<p>我的计算机科学教授Bart Massey，和Greg Kroah-Hartman比较熟，他当时在找人做Linux USB项目。Bart认为我很合适，可以胜任“usbfs2”项目。usbfs2开始是我的波特兰州立大学高级选修课项目，后来变成英特尔大学生研究计划下的一个项目。</p>
<blockquote>
<p>It was pretty nerve-racking to send my first patchset out, but my then-boyfriend-now-husband encouraged me to actually hit send. The Linux USB community was a pretty good place to start doing kernel development, and the people on the mailing list were patient about answering my newbie questions.</p>
</blockquote>
<p>我第一次提交补丁包的时候非常的紧张，但我的男友-现在是丈夫鼓励我发送出。Linux USB社区是一个开始内核开发的好地方，邮件列表上的人都很耐心地回答我这个信守的问题。</p>
<blockquote>
<p>A couple months before I graduated, I proposed a talk on my usbfs2 project for OSCON 2007. Kristen Accardi was on the OSCON selection committee, and remembered me from some Portland Linux gatherings I had been to. She knew that Intel’s Open Source Technology Center was looking for a Linux USB developer, so she got me an interview with OTC. I’ve been working for OTC for the past five years now, continuing my work on the Linux USB subsystem.</p>
</blockquote>
<p>在毕业前几个月，我在2007年度的OSCON上做了usbfs2的演讲。OSCON选举委员会的Kristen Accardi看到我来自波特兰Linux群。她知道英特尔的开源技术中心正在招聘Linux USB开发员，所以她给我一个面试机会。我研究在英特尔开源技术中心做了5年的Linux USB子系统开发。</p>
<blockquote>
<p>I wouldn’t be a Linux kernel developer today without the contacts I created by networking with other developers at conferences and tech events.</p>
</blockquote>
<p>如果没有集会和技术论坛的其他开发者的交流帮助，我不可能成为一个Linux内核开发者。</p>
<blockquote>
<p>What keeps you interested in it?</p>
</blockquote>
<p>是什么让你兴趣不减？</p>
<blockquote>
<p>The people keep me coming back. I really love learning and discussing new ideas with the Linux kernel community, and my Intel co-workers. Sure, there’s some heated discussions every once in a while, but most developers are friendly enough to take the time and answer any questions I have.</p>
</blockquote>
<p>我喜欢和Linux内核论坛以及我的英特尔同事，一起学习、讨论新的想法。确实，时常会有一些激烈的讨论，但大多数开发者都是很友好的花时间回答我的任何问题。</p>
<blockquote>
<p>What’s the most amused you’ve ever been by the collaborative development process (flame war, silly code submission, amazing accomplishment)?</p>
</blockquote>
<p>在协作开发过程中你觉得好玩的是什么？（嘴仗，愚蠢代码的提交，惊人的成就）？</p>
<blockquote>
<p>I’ve certainly amused Greg KH in the past with my pull request descriptions. Here’s an excerpt from a reply he sent me:</p>
</blockquote>
<p>我觉得最搞的是Greg KH对我非常愚蠢的请求的回应。这里是回信的片段：</p>
<blockquote>
<p>Date: Thu, 26 May 2011 00:04:50 -0700<br>From: Greg KH<br>To: Sarah Sharp<br>Cc: linux-usb@vger.kernel.org<br>Subject: Re: [RFC 0/3] xhci: Remove useless debugging</p>
<p>On Wed, May 25, 2011 at 04:28:51PM -0700, Sarah Sharp wrote:<br>            The xHCI driver is what, two years old now? It’s high time it put on<br>            its big girl pants and stop crapping out useless debugging information.</p>
<pre><code>you now owe me a wet-wipe to clean my laptop up from the coffee i just
snorted out my nose all over it.
</code></pre></blockquote>
<p>2011年5月25日，星期三，早上04:28:51，Sarah Sharp写道：<br>            xHCI驱动两年了？是时候</p>
<p>你现在欠我一条湿纸巾</p>
<blockquote>
<p>What’s your advice for developers who want to get involved?</p>
</blockquote>
<p>对想进入该领域的开发者你有什么建议？</p>
<blockquote>
<p>Find a medium-sized project, in a part of the Linux kernel community that has a responsive mailing list. Don’t waste your time on a bunch of spelling fix patches. A couple bug fix patches should be enough to get you used to the patch submission process, but at some point you need to move on and start making useful, bigger, contributions to the kernel.</p>
</blockquote>
<p>找一个中等的项目，在linux内核社区中有很好的邮件列表。别浪费时间在拼写错误的补丁包上。</p>
<blockquote>
<p>Find a mentor. It doesn’t have to be someone who is a Linux subsystem maintainer. It should be someone who knows git basics, can review your code, and help you set up a mail client so you can send patches. Team up with a friend to do joint code review and try to figure out a Linux kernel subsystem together.</p>
</blockquote>
<p>找一个有经验的人。不一定非要是Linux子系统的维护者。只要这个人知道基本的git用法，可以review你的代码，以及可以帮助你配置提交补丁包的邮件客户端。和你的朋友进行互相code review的关系，并且一起尝试进行Linux内核子系统的学习。</p>
<blockquote>
<p>What do you listen to when you code?</p>
</blockquote>
<p>在编码的时候你都听些什么？</p>
<blockquote>
<p>I can’t concentrate on coding when I listen to vocals, so I tend to lean towards electronica, break beats, or classical movie sound tracks. I usually listen to Daft Punk, Justice, Hans Zimmer, and Klaus Badelt.</p>
</blockquote>
<p>太吵闹的音乐我是无法集中精神编码的，所以我倾向于电子音乐，慢节拍，古典电影的插曲。我常听Daft Punk, Justice, Hans Zimmer, and Klaus Badelt。</p>
<blockquote>
<p>What mailing list or IRC channel will people find you hanging out at? What conference(s)?</p>
</blockquote>
<p>在哪些邮件列表或IRC频道可以找到你？会议呢？</p>
<blockquote>
<p>I’m on the linux-usb@vger.kernel.org mailing list. As for conferences, I go to OSCON, Open Source Bridge, LinuxCon America, Linux Plumbers Conf, Linux Kernel Summit, and Linux Conf Australia. This year, I’ll also be at AdaCamp D.C., representing women in open source.</p>
</blockquote>
<p>我在linux-usb@vger.kernel.org邮件列表。会议的话，我会参加OSCON, 开源Bridge，美国Linux会议，Linux Plumbers Conf, Linux内核峰会以及澳大利亚Linux会议。今年我将代表开源中的女性参加华盛顿的AdaCamp。</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/04/30-linux-kernel-developers-in-30-weeks-sarah-sharp/" data-id="ciqqpe1i20039nmpv526fbxm8" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/Translation/">Translation</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-30-linux-kernel-developers-in-30-weeks-thomas-gleixner" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/04/30-linux-kernel-developers-in-30-weeks-thomas-gleixner/" class="article-date">
  <time datetime="2013-03-03T16:00:00.000Z" itemprop="datePublished">2013-03-04</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/english/">english</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/04/30-linux-kernel-developers-in-30-weeks-thomas-gleixner/">30 Linux Kernel Developers in 30 Weeks: Thomas Gleixner</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>原文:<a href="https://www.linux.com/news/special-feature/linux-developers/591039-30-linux-kernel-developers-in-30-weeks-thomas-gleixner" target="_blank" rel="external">30 Linux Kernel Developers in 30 Weeks: Thomas Gleixner</a></p>
<blockquote>
<p>This is the second in our 30-week series that profiles a different Linux kernel developer each week. Last week we debuted the series with Linus Torvalds. The profiles we publish throughout the rest of 2012 should help illustrate how these developers do their work, providing important insight on how to work with them and what makes them tick.</p>
</blockquote>
<p>这个30周30位Linux内核开发者介绍的第二期。上周我们采访了Linus Toravalds。在2012年余下时间中发表的这些文章将告诉大家他们是如何工作的，怎样与他们协同工作以及他们成功的原因。</p>
<blockquote>
<p>Name</p>
</blockquote>
<p>名字</p>
<blockquote>
<p>Thomas Gleixner, nickname: tglx</p>
</blockquote>
<p>Thomas Gleixner, 昵称: tglx</p>
<blockquote>
<p>What role do you play in the community and/or what subsystem(s) do you work on?</p>
</blockquote>
<p>你在社区中扮演什么觉得以及维护哪部分？</p>
<blockquote>
<p>Quite a few people consider me to be one of the Grumpy Old Men. That’s related to my age and the age-related unwillingness to cope with crap.</p>
</blockquote>
<p>很多人认为我是脾气暴躁的老人家。这涉及到我的年纪，但和年纪一丁点关系都没有。</p>
<blockquote>
<p>As a maintainer I’m responsible for the core infrastructure of timers, timekeeping and interrupt handling. I’m part of the x86 architecture maintainer team and I’m the maintainer and main developer of the real time preemption patch. Aside of that I have a strong affinity for mission impossible and tree wide code cleanups.</p>
</blockquote>
<p>作为一个维护人员，我主要负责定时器的核心基础，时间记录器以及终端处理。我是x86架构维护组成员，实时抢占补丁的开发和维护者。除此之外，我喜欢一些高难度任务，以及内核树清理工作。</p>
<blockquote>
<p>Where do you get your paycheck?</p>
</blockquote>
<p>你的收入来源？</p>
<blockquote>
<p>From my own company, which gets part of it refunded by contracts with Red Hat and others interested in my work.</p>
</blockquote>
<p>来自我的公司，其中一部分是红帽子的合约，其他的是我的工作。</p>
<blockquote>
<p>What part of the world do you live in? Why there?</p>
</blockquote>
<p>你在哪生活？为什么？</p>
<blockquote>
<p>Germany. It’s my home, why should I live anywhere else?</p>
</blockquote>
<p>德国。这里是我的家，我不可能去其他地方。</p>
<blockquote>
<p>What are your favorite productivity tools for software development?</p>
</blockquote>
<p>你最喜欢的软件开发工具是什么？</p>
<blockquote>
<p>Command line tools. Don’t try to involve me into Emacs vs. VI discussions and don’t ask me about GUI tools :)</p>
</blockquote>
<p>命令行工具。不要让我陷入Emacs与VI论战，也不要问一些GUI工具。:)</p>
<blockquote>
<p>What do you run on your desktop?</p>
</blockquote>
<p>你通常使用什么工具？</p>
<blockquote>
<p>Changing flavors of Linux distributions. My desktop requirements are rather low: Manage a gazillion of terminals, run a graphical browser and occasionally fire up some unavoidable GUI applications.</p>
</blockquote>
<p>修改Linux分发包的特性。我对桌面要求很低:管理一个图形终端，运行一个界面浏览器，偶尔修改一些负责的GUI应用程序。</p>
<blockquote>
<p>I’m desperately trying to avoid the new fangled app driven “desktops,” which insist on knowing better than I how to manage my workflow efficiently.</p>
</blockquote>
<p>我尽可能的避免在桌面中运行新的应用程序，</p>
<blockquote>
<p>How did you get involved in Linux kernel development?</p>
</blockquote>
<p>你是如何进入到Linux内核开发的？</p>
<blockquote>
<p>Curiosity.</p>
</blockquote>
<p>好奇心使然。</p>
<blockquote>
<p>What keeps you interested in it?</p>
</blockquote>
<p>什么让你一如既往干这事？</p>
<blockquote>
<p>The fun of it. Working with smart people all over the world.</p>
</blockquote>
<p>这是件有意思的工作。同时也可以和全世界最聪明的人一起工作。</p>
<blockquote>
<p>Image: LinuxCon Europe, Gleixner second from right</p>
</blockquote>
<p>图片:  欧洲Linux会议，Gleixner在右边第二个</p>
<blockquote>
<p>What’s the most amused you’ve ever been by the collaborative development process (flame war, silly code submission, amazing accomplishment)?</p>
</blockquote>
<p>在协作开发过程中你觉得最好玩的是什么？（嘴仗，愚蠢代码提交，惊人的成就）？</p>
<blockquote>
<p>That’s a tough question. I have my favorites in all categories, but as far as silliness, this is my favorite one:</p>
</blockquote>
<p>这是一个很难回答的问题。我喜欢所有的模块，但我觉得最傻的是下面这个：</p>
<blockquote>
<ul>
<li>d-&gt;core_internal_state__do_not_mess_with_it |= SOME_CONSTANT;</li>
</ul>
</blockquote>
<ul>
<li>d-&gt;core_internal_state__do_not_mess_with_it |= SOME_CONSTANT;</li>
</ul>
<blockquote>
<p>See <a href="http://www.spinics.net/lists/linux-tip-commits/msg11099.html" target="_blank" rel="external">http://www.spinics.net/lists/linux-tip-commits/msg11099.html</a></p>
</blockquote>
<p>参考 <a href="http://www.spinics.net/lists/linux-tip-commits/msg11099.html" target="_blank" rel="external">http://www.spinics.net/lists/linux-tip-commits/msg11099.html</a></p>
<blockquote>
<p>What’s your advice for developers who want to get involved?</p>
</blockquote>
<p>你对想进入该领域的开发者有什么建议？</p>
<blockquote>
<p>Find your area of interest, and start tackling problems which are affecting you.</p>
</blockquote>
<p>找到你感兴趣的领域，然后解决对你有帮助的问题。</p>
<blockquote>
<p>What do you listen to when you code?</p>
</blockquote>
<p>你最编码时都听些什么？</p>
<blockquote>
<p>To the thoughts drifting through my brain.</p>
</blockquote>
<p>我</p>
<blockquote>
<p>What mailing list or IRC channel will people find you hanging out at? What conference(s)?</p>
</blockquote>
<p>在那些邮件列表或IRC频道可以找到你？会议呢？</p>
<blockquote>
<p>Mailing lists: Mostly LKML (Linux Kernel Mailing List)<br>IRC channels : My nick is unique<br>Conferences  : Too many</p>
</blockquote>
<p>邮件列表: 基本上是LKML（Linux内核列表）<br>IRC频道: 我的昵称是 unique<br>会议: 太多了</p>
<blockquote>
<p>Thanks to Thomas for participating in 30 Linux Kernel Developers in 30 Weeks. Next week, we talk to Sarah Sharp.</p>
</blockquote>
<p>谢谢Thomas参加30周30位Linux内核开发者。下周我们将对话Sarah Sharp。</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/04/30-linux-kernel-developers-in-30-weeks-thomas-gleixner/" data-id="ciqqpe1i5003cnmpv5t21mgwx" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/Translation/">Translation</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-30-linux-kernel-developers-in-30-weeks-paul-mckenney" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/02/30-linux-kernel-developers-in-30-weeks-paul-mckenney/" class="article-date">
  <time datetime="2013-03-01T16:00:00.000Z" itemprop="datePublished">2013-03-02</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/english/">english</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/02/30-linux-kernel-developers-in-30-weeks-paul-mckenney/">30 Linux Kernel Developers in 30 Weeks: Paul McKenney</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>原文： <a href="https://www.linux.com/news/special-feature/linux-developers/692065-30-linux-kernel-developers-in-30-weeks-paul-mckenney" target="_blank" rel="external">30-linux-kernel-developers-in-30-weeks-paul-mckenney</a></p>
<blockquote>
<p>Today we celebrate the completion of our 30 Linux Kernel Developers in 30 Weeks series. We’ve talked to 30 of the world’s best developers over the last eight months in an effort to learn more about how the world’s largest collaborative development project works. We’ve also learned a lot of details about what makes these amazing people tick and what advice they have for people who want to get involved.</p>
</blockquote>
<p>今天可以庆祝30周30位Linux内核开发者系列文章顺产了。我们花了8个月时间采访了这个星球上最好的30位开发者,很好地了解了最大协作开发项目是如何运作的。同时也知道了是什么让这些牛人牛起来，以及他们对想入门的内核开发者的建议。</p>
<blockquote>
<p>Today we talk to Paul McKenney, who says his kernel development addicition is funded by IBM. He explains why he uses Vi and how Alexey Kuznetsov prompted Paul’s first experience with Linux - and not in the way you might think.</p>
</blockquote>
<p>今天采访了Paul Mckenney，IBM使他走上了内核开发的道路。他将回答为何使用Vi，以及Alexey Kuznetsov爆料Paul第一次使用Linux的经历-出乎你的意料。</p>
<p>Enjoy the last post in this series and stay tuned: We have a new series in the works that we hope to debut in February. I also want to give a big thanks to everyone who participated in this series.</p>
<p>尽情享受这一系列的最后一篇文章，也敬请关注:即将在2月份发布的新的系列作品。感谢所有参与本系列的人。</p>
<blockquote>
<p>Name</p>
</blockquote>
<p>姓名</p>
<blockquote>
<p>Paul E. McKenney, IRC nickname paulmck</p>
</blockquote>
<p>Paul E. McKenney, IRC 昵称 paulmck</p>
<blockquote>
<p>What role do you play in the community and/or what subsystem(s) do you work on?</p>
</blockquote>
<p>你在社区中扮演什么角色，或者负责哪个子系统的开发？</p>
<blockquote>
<p>Read-copy update (RCU) is my baby; though, I do occasionally get out into other parts of the kernel and into a few user-mode projects, including userspace RCU and “Is Parallel Programming Hard, And, If So, What Can You Do About It?”</p>
</blockquote>
<p>我负责维护Read-copy update (RCU锁)；但我也同时参与其他内核模块开发以及一些用户态的项目，包括用户态的RCU锁和“如何进行困难的并行编程”</p>
<blockquote>
<p>Where do you get your paycheck?</p>
</blockquote>
<p>你的收入来源在哪？</p>
<blockquote>
<p>IBM Linux Technology Center funds my kernel development addiction.</p>
</blockquote>
<p>IBM Linux技术中心给我的Linux开发工作提供资金。</p>
<blockquote>
<p>What part of the world do you live in? Why there?</p>
</blockquote>
<p>你在哪生活?为何选择那里?</p>
<blockquote>
<p>I live in Beaverton, Oregon, USA.</p>
</blockquote>
<p>我住在美国俄勒冈州的比弗顿。</p>
<blockquote>
<p>One reason is that both my wife and I grew up on Oregon.  Another reason is that Beaverton was where Sequent Computer System was located – and they were hiring back in 1990 when it came time to move back home from the Bay Area.</p>
</blockquote>
<p>原因之一是我和我的妻子都是在比佛顿长大。另外一个是因为Sequent公司在俄勒冈州 – 他们在1990年从海湾搬回来后就开始招聘。</p>
<blockquote>
<p>What are your favorite productivity tools for software development? What do you run on your desktop?</p>
</blockquote>
<p>你最喜欢的软件开发工具是什么？你通常使用什么？</p>
<blockquote>
<p>The usual productivity tools: git, cscope, vi, bash, awk, and the rare bout with python. Why vi? Well, the shared system I was using 30 years ago could support seven or eight concurrent vi sessions, but only one emacs session. In that environment, therefore, use of emacs was socially irresponsible.</p>
</blockquote>
<p>常用的工具有: git，cscope，vi，bash，awk，以及python。为何用vi？在30年前我使用的共享系统能支持7或8个vi会话，但只支持1个emacs会话。在这种情况下，不合适使用emacs。</p>
<blockquote>
<p>I run Ubuntu with Unity2D at the moment.</p>
</blockquote>
<p>我现在使用的是Unity2D的Ubuntu桌面系统</p>
<blockquote>
<p>How did you get involved in Linux kernel development?</p>
</blockquote>
<p>你是如何参与Linux内核开发的？</p>
<blockquote>
<p>The first time was in 1997, back when I was working on DYNIX. I got an email from someone with a .ru email address asking for a machine-readable copy of an old paper of mine. I sent along a postscript of the paper and asked what he was using it for. He replied that he was working on this kernel named “Linux.” Although I had heard of Linux, it would be some years before I learned the significance of the name “Alexey Kuznetsov.”</p>
</blockquote>
<p>第一次是在1997年，当时我还在DYNIX工作。我收到一封来自地址为.ru的邮件，想要我的一篇旧文章的电子版副本。我把文章的postscript形式版本发给他们了，并询问了用途。他回复说他为”Linux”内核工作。在我知道”Alexey Kuznetsov”这个名字好几年前，我就听说过Linux。</p>
<blockquote>
<p>The second time was in 2000, when I joined the IBM Linux Technology Center.</p>
</blockquote>
<p>第二次是在2000年，我加入了IBM Linux技术中心。</p>
<blockquote>
<p>What keeps you interested in it?</p>
</blockquote>
<p>是什么让你保持对Linux内核开发工作的兴趣？</p>
<blockquote>
<p>The constant challenge of keeping up with the what people are using the Linux kernel for. The need for SMP scalability, real-time response, small memory footprint, and energy efficiency (to say nothing of the reliability required to support millions of devices) has resulted in a long series of very interesting problems to solve.</p>
</blockquote>
<p>对追赶上Linux内核使用者的挑战与使用Linux内核的人挑战。SMP扩展，实时响应，内存最小占用，以及高效资源使用(支持百万级别设备的可靠性)，这些都是一系列要解决的有趣问题。</p>
<blockquote>
<p>What’s the most amused you’ve ever been by the collaborative development process (flame war, silly code submission, amazing accomplishment)?</p>
</blockquote>
<p>在协作开发过程中你觉得的最消遣的是什么(嘴仗，愚蠢的代码提交，惊人的成就)。</p>
<blockquote>
<p>I am often amazed when a single technical solution addresses problems that appear to have absolutely nothing to do with each other. The first time was CONFIG_NO_HZ being required by battery-powered devices on the one hand and by mainframes on the other: The smallest of the small and the biggest of the big. Later I was surprised by how the -rt patchset was so effective at finding SMP bugs. More recently, a patch I am working on for the HPC and real-time communities might well also turn out to be useful for energy efficiency.</p>
</blockquote>
<p>我常常感到惊讶，一个简单的技术解决方案在没有干扰到其他模块的情况下能很好的解决问题。第一次是CONFIG_NO_HZ同时用于电池供电设备和主机:最小中最小和最大中的最大。后面是-rt补丁包在查找SMP问题的高效应用。最近，我正在做的高性能计算(HPC)和实时通信也许对能源效率有帮助。</p>
<blockquote>
<p>What’s your advice for developers who want to get involved?</p>
</blockquote>
<p>你对想入门的开发者有什么建议？</p>
<blockquote>
<p>Read all the great advice from the other 29 kernel developers. I cannot think of anything to say that they have not already said. :)</p>
</blockquote>
<p>参考其他29位Linux开发者的建议吧。我能想到的建议，他们都说了。</p>
<blockquote>
<p>What do you listen to when you code?</p>
</blockquote>
<p>你都听些什么在编码的时候？</p>
<blockquote>
<p>I listen to contemporary music. If it is more than three or four centuries old, I have a hard time relating to it.</p>
</blockquote>
<p>我听现代音乐。如果是超过三、四百年的音乐，有个固定的时期限制。</p>
<blockquote>
<p>What mailing list or IRC channel will people find you hanging out at? What conference(s)?</p>
</blockquote>
<p>哪个邮件列表或IRC频道可以找到你？会议呢？</p>
<blockquote>
<p>LKML and linux-rt-users for email lists, and #linux-rt on IRC.  That said, I cannot say that I really keep up with any of them.</p>
</blockquote>
<p>LKML和Linux-rt用户邮件列表，IRC频道是#linux-rt。保不定在哪个。</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/02/30-linux-kernel-developers-in-30-weeks-paul-mckenney/" data-id="ciqqpe1hu0033nmpvv2jblmk1" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/Translation/">Translation</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-use-irc" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/02/use-irc/" class="article-date">
  <time datetime="2013-03-01T16:00:00.000Z" itemprop="datePublished">2013-03-02</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/tools/">tools</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/02/use-irc/">use irc</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>xchat</p>
<p>yum install xchat -y</p>
<p>freenode</p>
<p>/join #ubuntu</p>
<p>/join #fedora</p>
<p>/close</p>
<p>Irssi</p>
<p>/server irc.freenode.net</p>
<p>/nick your.nick</p>
<p>/join #ubuntu</p>
<p>Ctrl+n/p switch channel</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/02/use-irc/" data-id="ciqqpe1i00036nmpvxh4nlpbs" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/IRC/">IRC</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-30-linux-kernel-developers-in-30-weeks-linus-torvalds" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/03/01/30-linux-kernel-developers-in-30-weeks-linus-torvalds/" class="article-date">
  <time datetime="2013-02-28T16:00:00.000Z" itemprop="datePublished">2013-03-01</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/english/">english</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/03/01/30-linux-kernel-developers-in-30-weeks-linus-torvalds/">30 Linux Kernel Developers in 30 Weeks: Linus Torvalds</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>原文: <a href="https://www.linux.com/news/special-feature/linux-developers/587846-30-linux-kernel-developers-in-30-weeks-linus-torvalds" target="_blank" rel="external">30 Linux Kernel Developers in 30 Weeks: Linus Torvalds</a></p>
<blockquote>
<p>Welcome to 30 Linux Kernel Developers in 30 Weeks! This is the first in a 30-week series we’re running that profiles a different Linux kernel developer each week. The Linux kernel development community is unique in many ways. The individuals that make up this community are responsible for orchestrating the world’s largest collaborative development project and have a very large impact on the future of the operating system and other technologies. The profiles we publish throughout the rest of 2012 should help illustrate how these developers do their work, providing important insight on how to work with them and what makes them tick.</p>
</blockquote>
<p>欢迎来到30周30位Linux内核开发者！这是介绍不同Linux内核开发者30周系列的第一个。Linux内核开发社区是独一无二的。社区中的每个开发者负责设计世上最大的协助开发项目，并且对操作系统和技术的未来发展有很大的影响。在余下的2012年中做的这些介绍，将阐述他们如何工作，如何跟他们一起工作以及什么使得他们伟大。</p>
<blockquote>
<p>We start the series with none other than Linux creator Linus Torvalds. This week Linus is in his home country of Finland to attend the Millennium Technology Prize ceremony. This week he was named a joint winner of the 2012 Millenium Technology Prize. Just before he left, he took the time to answer these profile questions.</p>
</blockquote>
<p>开篇介绍的是Linus Torvalds。本周Linus在他的家乡芬兰参加千禧技术奖典礼，成为2012千禧技术奖的得主之一。在他离开前，作了我们的采访。</p>
<blockquote>
<p>What’s your name?</p>
</blockquote>
<p>你的名字是？</p>
<blockquote>
<p>Linus Torvalds</p>
</blockquote>
<p>Linus Torvalds</p>
<blockquote>
<p>What role do you play in the community and/or what subsystem(s) do you work on?</p>
</blockquote>
<p>你在社区中扮演什么角色或负责哪个子系统的开发？</p>
<blockquote>
<p>I’m the kernel top-level maintainer and don’t tend to do any particular subsystems directly; although, I occasionally get directly involved with the VFS layer (and very occasionally some VM discussions).</p>
</blockquote>
<p>我是内核的最高维护者，不直接参加任何子系统开发。但是偶尔会参与VFS界面(以及更偶尔地参加VM讨论)</p>
<blockquote>
<p>Where do you get your paycheck?</p>
</blockquote>
<p>你的收入来源是什么？</p>
<blockquote>
<p>The Linux Foundation.</p>
</blockquote>
<p>Linux基金会。</p>
<blockquote>
<p>What part of the world do you live in? Why there?</p>
</blockquote>
<p>你在哪居住？为什么？</p>
<blockquote>
<p>Portland, Oregon. As to “why?” it’s mostly because it’s a lot calmer and more livable than Silicon Valley, where we lived for several years before moving here. The weather may not be that great, but it’s a much better area for the kids to grow up in, I suspect. And we can afford a bigger house in a good school district.</p>
</blockquote>
<p>俄勒冈州，波特兰。原因是这里安静，比硅谷更适合居住，在哪边生活了好几年。也许气候没有那么好，但我相信这里更适合孩子的成长。还有在这边名校的区供得起大房子。</p>
<blockquote>
<p>What are your favorite productivity tools for software development? What do you run on your desktop?</p>
</blockquote>
<p>你最喜爱的软件开发工具是什么？你通常使用什么？</p>
<blockquote>
<p>I really just run a web browser (for email and time wasting), and then several terminals that I use git in. With the occasional “gitk” window to show the git history view. Most of my time goes to reading (and answering) email, and merging trees and looking at the results.</p>
</blockquote>
<p>我只开一个浏览器(收发邮件和打发时间），和在几个终端中跑git。偶尔会使用gitk窗口浏览git历史记录。大多数时间是读和回邮件，合并开发树以及查看结果。</p>
<blockquote>
<p>The other tool I tend to use is the “perf” tool to do performance profiling for the loads I care about (which is mainly kernel compiles and some git workloads).</p>
</blockquote>
<p>其他使用的工具是perf，用于我关心的负载进行压力测试(主要有内核编译和一些git工作负载)。</p>
<blockquote>
<p>How did you get involved in Linux kernel development?</p>
</blockquote>
<p>你是如何参入Linux内核开发的？</p>
<blockquote>
<p>Heh. Not enough common sense and knowledge to know that writing your own OS was a ridiculous amount of work.</p>
</blockquote>
<p>呵。缺乏常识和写操作系统的知识，不可能胜任这份工作。</p>
<blockquote>
<p>What keeps you interested in it?</p>
</blockquote>
<p>是什么让你对这份工作爱不释手？</p>
<blockquote>
<p>I still like the tinkering, and just the technical side of it. The fact that it’s actually pretty social, and I get to call people names, is just a bonus.</p>
</blockquote>
<p>我依旧喜欢解技术方面的问题。事实上这是相当现实的，？？？</p>
<blockquote>
<p>What’s the most amused you’ve ever been by the collaborative development process (flame war, silly code submission, amazing accomplishment)?</p>
</blockquote>
<p>在协作开发过程中你觉得好玩的是什么（嘴仗，愚蠢代码的提交，惊人的成就)？</p>
<blockquote>
<p>I think my favorite part is when somebody does something utterly crazy using Linux. Things that just make no sense at all, but are impressive from a technical angle (and even more impressive from a “they spent many months doing <em>that</em>?” angle).</p>
</blockquote>
<p>我认为我喜欢的部分是某人使用Linux做一些完全疯狂的事情。从技术角度看，是一些毫无意义但又令人叹为观止的事情(甚至花费几个月干这事)。</p>
<blockquote>
<p>Like when Alan Cox was working on porting Linux to the 8086. Or the guy who built his own computer using an 8-bit microcontroller that he wired up to some RAM and an SD card, then wrote an ARM emulator for it, and booted Linux (really really slowly) on his board.</p>
</blockquote>
<p>像Alan Cox移植Linux到8086上的工作。或者一些使用了拥有RAM和SD卡的8位微处理器来构建自己的计算机的家伙，在开发板上编写一个ARM仿真器，然后启动Linx(非常非常慢)。</p>
<blockquote>
<p>What’s your advice for developers who want to get involved?</p>
</blockquote>
<p>你对想进入该领域的开发者有什么建议？</p>
<blockquote>
<p>Start small. It doesn’t even have to be Linux - there’s a lot of open source projects that need help, and you want to learn how to get involved. And once you <em>do</em> realize that user-mode programmers are wusses, and you want to get involved with kernel programming, don’t try to revolutionize some core kernel code - try to find some really small nagging concern, and fix that one thing. Maybe a driver for hardware that you have access to that doesn’t work as well as it should, things like that.</p>
</blockquote>
<p>慢慢来。不一定非要做Linux，有很多的开源项目需要帮助，你可以学习如何参与到其中。一旦你确实觉得用户模式的编程是在浪费时间，想要参与到内核开发中，不要尝试对内核代码进行大改，应该尝试找出一些小的问题，然后解决掉。一些像驱动程序没有如期的运行的问题。</p>
<blockquote>
<p>It takes a while to learn the ropes, and it really helps if people can see that you’ve done other things before you start sending more involved patches.</p>
</blockquote>
<p>如果大家看到你在提交很多复杂的补丁前已经做了一些事情，花些时间学习协同开发是有帮助的。</p>
<blockquote>
<p>But the most important thing is “have good taste.” It’s hard to describe, but it’s something I personally look for. People who do things the “RightWay(tm)” - and I’m not meaning that you should follow all the rules we have come up with over the years (although you should do that, too) - but I’m talking about that elusive quality of writing code that makes obvious sense and does the right thing without lots of special cases or complexity, but also without being unnecessarily abstract and general-purpose. “Do one thing, and do it well.”</p>
</blockquote>
<p>但最重要的是要有好的想法。这个是非常难描述的，却是我个人寻找的东西。做正确的事情的人，并不是说你应该遵守所有的之前建立的规则?????</p>
<blockquote>
<p>What do you listen to when you code?</p>
</blockquote>
<p>你在编码的时候听什么？</p>
<blockquote>
<p>Oh, I want my office to be totally silent. I listen to music when I’m driving the kids around, etc., but when I’m working, I don’t want to hear anything. Not music, not any noise from the fans in my computers. Just stillness.</p>
</blockquote>
<p>我需要完全安静的办公室。当我驱车带孩子的时候才听音乐，工作时我不想听到任何声响。不能有音乐，电脑的风扇也不能有噪音。只要安静。</p>
<blockquote>
<p>What mailing list or IRC channel will people find you hanging out at? What conference(s)?</p>
</blockquote>
<p>在哪个邮件列表或IRC频道可以找到你？会议呢？</p>
<blockquote>
<p>I don’t do IRC or any other real-time interactive stuff - I do everything by email. I follow the general kernel and git mailing lists, but even those I have in “auto-archival” mode, so that I only see the threads if I explicitly look for them or if I’m cc’d or pointed at them.</p>
</blockquote>
<p>我不使用IRC或其他的实时通讯工具，我只用邮件。我接收所有的内核和git邮件列表，但我有自动分析模式，这样我就可以查看我关注的或者我有被CC或要求查看的主题。</p>
<blockquote>
<p>As to conferences, it’s usually just the Linux Kernel Summit. I try to get to LinuxConf Australia most years too - I like it as a conference and it’s in Australia during their summer. But LCA is a “when it works out” kind of thing, so it’s probably only every other year or so.</p>
</blockquote>
<p>至于会议，只有Linux内核峰会。我有好几年尝试参加澳大利亚Linux会议。因为这是一个在澳大利亚的夏天举行的会议，所以我喜欢。但????</p>
<blockquote>
<p>There’s been a few other conferences I go to, usually because they’re in an interesting area and if I can get some scuba diving done during the same trip</p>
</blockquote>
<p>还有其他一些会议，通常因为他们在一我感兴趣的领域以及在参与的过程????</p>
<blockquote>
<p>Thank you, Linus! Next week we talk to Thomas Gleixner. </p>
</blockquote>
<p>感谢你，Linus！下周我们对话Thomas Gleixner。</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/03/01/30-linux-kernel-developers-in-30-weeks-linus-torvalds/" data-id="ciqqpe1hp0030nmpvu5ifrgji" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/Translation/">Translation</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-frequently-questions" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/02/15/frequently-questions/" class="article-date">
  <time datetime="2013-02-14T16:00:00.000Z" itemprop="datePublished">2013-02-15</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/linux/">linux</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/02/15/frequently-questions/">frequently questions</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <h3 id="1-Adobe-Flash-Player-11-2-on-Fedora-18-17"><a href="#1-Adobe-Flash-Player-11-2-on-Fedora-18-17" class="headerlink" title="1. Adobe Flash Player 11.2 on Fedora 18/17"></a>1. Adobe Flash Player 11.2 on Fedora 18/17</h3><p>1). Install Adobe YUM Repository RPM package<br><code>rpm -ivh http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm</code><br><code>rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux</code>  </p>
<p>2). Update Repositories<br><code>yum check-update</code></p>
<p>3). Install<br><code>yum install flash-plugin nspluginwrapper alsa-plugins-pulseaudio libcurl</code></p>
<p>Reference:  </p>
<ul>
<li><a href="http://www.if-not-true-then-false.com/2010/install-adobe-flash-player-10-on-fedora-centos-red-hat-rhel/" target="_blank" rel="external">Install flash on fedora</a>  </li>
</ul>
<h3 id="2-Play-music-and-movies"><a href="#2-Play-music-and-movies" class="headerlink" title="2. Play music and movies"></a>2. Play music and movies</h3><p>1). add yum repository<br><code>su -c &#39;yum localinstall --nogpgcheck http://mirrors.163.com/rpmfusion/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://mirrors.163.com/rpmfusion/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm&#39;</code></p>
<p>2). install mp3 and other audio support<br><code>su -c &#39;yum install gstreamer-plugins-good gstreamer-plugins-bad gstreamer-plugins-ugly libtunepimp-extras-freeworld xine-lib-extras-freeworld&#39;</code></p>
<p>3). install video support<br><code>su -c &#39;yum install ffmpeg ffmpeg-libs gstreamer-ffmpeg libmatroska xvidcore&#39;</code></p>
<p>question:<br>    Appear erro message as below when install:<br>    <code>GPG key retrieval failed: [Errno 14] Could not open/read file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-18-x86_64</code><br>    Check file<br>    <code>ls /etc/pki/rpm-gpg/RPM-GPG-KEY-*</code><br>    Can not found /etc/pki/rpm-gpg/RPM-GPG-KEY-rpmfusion-free-fedora-18-x86_64  </p>
<p>Solution:<br>    <code>su -c &#39;yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-18.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-18.noarch.rpm&#39;</code></p>
<p>Reference:  </p>
<ul>
<li><a href="http://www.linuxidc.com/Linux/2012-06/62112.htm" target="_blank" rel="external">Fedora 17 无法播放mp3 rmvb</a>  </li>
<li><a href="https://ask.fedoraproject.org/question/7439/gpg-key-retrieval-failed/" target="_blank" rel="external">GPG key retrieval failed</a></li>
</ul>
<p><strong>Update:</strong><br>Install gnome-mplayer-common rpm</p>
<h3 id="3-How-to-create-and-use-Live-USB"><a href="#3-How-to-create-and-use-Live-USB" class="headerlink" title="3. How to create and use Live USB"></a>3. How to create and use Live USB</h3><p>Reference link: <a href="http://fedoraproject.org/wiki/How_to_create_and_use_Live_USB" target="_blank" rel="external">http://fedoraproject.org/wiki/How_to_create_and_use_Live_USB</a></p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/02/15/frequently-questions/" data-id="ciqqpe1hn002xnmpvtey83ihw" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/FAQ/">FAQ</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-exploit-program" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/02/01/exploit-program/" class="article-date">
  <time datetime="2013-01-31T16:00:00.000Z" itemprop="datePublished">2013-02-01</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/linux/">linux</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/02/01/exploit-program/">Exploit Program</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>I Like this sentence:  </p>
<h4 id="TO-BE-CONSCIOUS-THAT-YOU-ARE-IGNORANT-IS-A-GREAT-STEP-TO-KNOWLEDGE-BENJAMIN-DISRAELI"><a href="#TO-BE-CONSCIOUS-THAT-YOU-ARE-IGNORANT-IS-A-GREAT-STEP-TO-KNOWLEDGE-BENJAMIN-DISRAELI" class="headerlink" title="TO BE CONSCIOUS THAT YOU ARE IGNORANT IS A GREAT STEP TO KNOWLEDGE - BENJAMIN DISRAELI"></a>TO BE CONSCIOUS THAT YOU ARE IGNORANT IS A GREAT STEP TO KNOWLEDGE - BENJAMIN DISRAELI</h4><hr>
<p>Everything have two face, good or bad, depends on your knowledge.  </p>
<hr>
<ul>
<li><a href="infinityexists.com">exploit video</a></li>
<li><a href="https://www.corelan.be/index.php/2009/07/19/exploit-writing-tutorial-part-1-stack-based-overflows/" target="_blank" rel="external">stack base overflow</a></li>
<li><a href="http://www.exploit-db.com/papers/12902/" target="_blank" rel="external">The Art of Grey-Box Attack</a></li>
<li><a href="http://www.hackerskills.com/" target="_blank" rel="external">a online hacker simulation</a><br>And you can find some answer <a href="http://amxking.bokee.com/viewdiary.177616635.html" target="_blank" rel="external">here</a></li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/02/01/exploit-program/" data-id="ciqqpe1hk002unmpvkj00acoq" class="article-share-link">Partager</a>
      
      
  <ul class="article-tag-list"><li class="article-tag-list-item"><a class="article-tag-list-link" href="/tags/exploit/">exploit</a></li></ul>

    </footer>
  </div>
  
</article>


  
    <article id="post-valuable-info" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2013/01/29/valuable-info/" class="article-date">
  <time datetime="2013-01-28T16:00:00.000Z" itemprop="datePublished">2013-01-29</time>
</a>
    
  <div class="article-category">
    <a class="article-category-link" href="/categories/others/">others</a>
  </div>

  </div>
  <div class="article-inner">
    
    
      <header class="article-header">
        
  
    <h1 itemprop="name">
      <a class="article-title" href="/2013/01/29/valuable-info/">valuable article</a>
    </h1>
  

      </header>
    
    <div class="article-entry" itemprop="articleBody">
      
        <ul>
<li><a href="http://www.tldp.org/HOWTO/Reading-List-HOWTO/" target="_blank" rel="external">The Linux Reading List</a></li>
<li><p><a href="http://www.catb.org/esr/faqs/hacker-howto.html" target="_blank" rel="external">How to be a hacker</a></p>
</li>
<li><p><a href="http://fedoraproject.org/wiki/Metasploit" target="_blank" rel="external">Fedora install Metasploit</a></p>
</li>
<li><p><a href="https://wiki.archlinux.org/index.php/Simple_stateful_firewall_HOWTO" target="_blank" rel="external">Simple Stateful Firewall</a></p>
</li>
<li><p><a href="http://blog.youxu.info/2009/08/04/smarthome/" target="_blank" rel="external">智能家庭设计的一些想法</a></p>
</li>
<li><p><a href="http://blogs.avg.com/news-threats/chatted-hacker-virus/" target="_blank" rel="external">Have you ever chatted with a Hacker within a virus?</a></p>
</li>
</ul>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://yoursite.com/2013/01/29/valuable-info/" data-id="ciqqpe1hg002snmpvy9elm7r7" class="article-share-link">Partager</a>
      
      
    </footer>
  </div>
  
</article>


  


  <nav id="page-nav">
    <a class="extend prev" rel="prev" href="/page/14/">&laquo; __('prev')</a><a class="page-number" href="/">1</a><span class="space">&hellip;</span><a class="page-number" href="/page/13/">13</a><a class="page-number" href="/page/14/">14</a><span class="page-number current">15</span><a class="page-number" href="/page/16/">16</a><a class="page-number" href="/page/17/">17</a><a class="page-number" href="/page/18/">18</a><a class="extend next" rel="next" href="/page/16/">__('next') &raquo;</a>
  </nav>
</section>
        
          <aside id="sidebar">
  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Catégories</h3>
    <div class="widget">
      <ul class="category-list"><li class="category-list-item"><a class="category-list-link" href="/categories/blog/">blog</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/database/">database</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/english/">english</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/kernel/">kernel</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/language/">language</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/linux/">linux</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/math/">math</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/network/">network</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/others/">others</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/person/">person</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/program/">program</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/source/">source</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/storage/">storage</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/tools/">tools</a></li><li class="category-list-item"><a class="category-list-link" href="/categories/windows/">windows</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Mot-clés</h3>
    <div class="widget">
      <ul class="tag-list"><li class="tag-list-item"><a class="tag-list-link" href="/tags/FAQ/">FAQ</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/IRC/">IRC</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/Translation/">Translation</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/android/">android</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/api/">api</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/assembly/">assembly</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/awk/">awk</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/batch/">batch</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/blog/">blog</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/book/">book</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/c/">c</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/c/">c++</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/cache/">cache</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/crash/">crash</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/database/">database</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/debug/">debug</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/dot/">dot</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/driver/">driver</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/emacs/">emacs</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/exploit/">exploit</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/file-system/">file system</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/filesystem/">filesystem</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/flowchart/">flowchart</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/gcc/">gcc</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/git/">git</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/google/">google</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/graphviz/">graphviz</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/hexo/">hexo</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/hosts/">hosts</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/iscsi/">iscsi</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/java/">java</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/javascript/">javascript</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/job/">job</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/json/">json</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/kernel/">kernel</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/linux/">linux</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/lisp/">lisp</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/lua/">lua</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/makefile/">makefile</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/malloc/">malloc</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/math/">math</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/maxima/">maxima</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/memory/">memory</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/memory-overflow/">memory overflow</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/mtrace/">mtrace</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/netdisk/">netdisk</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/network/">network</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/others/">others</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/pandoc/">pandoc</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/performance/">performance</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/person/">person</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/protobuf/">protobuf</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/python/">python</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/rsync/">rsync</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/sed/">sed</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/shell/">shell</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/skype/">skype</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/sms/">sms</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/source/">source</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/ssh/">ssh</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/stack/">stack</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/storage/">storage</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/study/">study</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/svn/">svn</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/sync/">sync</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/test/">test</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/time/">time</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/tools/">tools</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/valgrind/">valgrind</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/vi/">vi</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/vim/">vim</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/virtual/">virtual</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/wget/">wget</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/windows/">windows</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/wireshark/">wireshark</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/write/">write</a></li><li class="tag-list-item"><a class="tag-list-link" href="/tags/xml/">xml</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Nuage de mot-clés</h3>
    <div class="widget tagcloud">
      <a href="/tags/FAQ/" style="font-size: 10px;">FAQ</a> <a href="/tags/IRC/" style="font-size: 10px;">IRC</a> <a href="/tags/Translation/" style="font-size: 13px;">Translation</a> <a href="/tags/android/" style="font-size: 10px;">android</a> <a href="/tags/api/" style="font-size: 10px;">api</a> <a href="/tags/assembly/" style="font-size: 10px;">assembly</a> <a href="/tags/awk/" style="font-size: 11px;">awk</a> <a href="/tags/batch/" style="font-size: 14px;">batch</a> <a href="/tags/blog/" style="font-size: 10px;">blog</a> <a href="/tags/book/" style="font-size: 10px;">book</a> <a href="/tags/c/" style="font-size: 16px;">c</a> <a href="/tags/c/" style="font-size: 19px;">c++</a> <a href="/tags/cache/" style="font-size: 10px;">cache</a> <a href="/tags/crash/" style="font-size: 10px;">crash</a> <a href="/tags/database/" style="font-size: 17px;">database</a> <a href="/tags/debug/" style="font-size: 12px;">debug</a> <a href="/tags/dot/" style="font-size: 10px;">dot</a> <a href="/tags/driver/" style="font-size: 10px;">driver</a> <a href="/tags/emacs/" style="font-size: 11px;">emacs</a> <a href="/tags/exploit/" style="font-size: 10px;">exploit</a> <a href="/tags/file-system/" style="font-size: 10px;">file system</a> <a href="/tags/filesystem/" style="font-size: 12px;">filesystem</a> <a href="/tags/flowchart/" style="font-size: 10px;">flowchart</a> <a href="/tags/gcc/" style="font-size: 10px;">gcc</a> <a href="/tags/git/" style="font-size: 12px;">git</a> <a href="/tags/google/" style="font-size: 11px;">google</a> <a href="/tags/graphviz/" style="font-size: 11px;">graphviz</a> <a href="/tags/hexo/" style="font-size: 10px;">hexo</a> <a href="/tags/hosts/" style="font-size: 10px;">hosts</a> <a href="/tags/iscsi/" style="font-size: 14px;">iscsi</a> <a href="/tags/java/" style="font-size: 10px;">java</a> <a href="/tags/javascript/" style="font-size: 10px;">javascript</a> <a href="/tags/job/" style="font-size: 10px;">job</a> <a href="/tags/json/" style="font-size: 10px;">json</a> <a href="/tags/kernel/" style="font-size: 14px;">kernel</a> <a href="/tags/linux/" style="font-size: 14px;">linux</a> <a href="/tags/lisp/" style="font-size: 10px;">lisp</a> <a href="/tags/lua/" style="font-size: 10px;">lua</a> <a href="/tags/makefile/" style="font-size: 10px;">makefile</a> <a href="/tags/malloc/" style="font-size: 10px;">malloc</a> <a href="/tags/math/" style="font-size: 11px;">math</a> <a href="/tags/maxima/" style="font-size: 10px;">maxima</a> <a href="/tags/memory/" style="font-size: 11px;">memory</a> <a href="/tags/memory-overflow/" style="font-size: 10px;">memory overflow</a> <a href="/tags/mtrace/" style="font-size: 10px;">mtrace</a> <a href="/tags/netdisk/" style="font-size: 10px;">netdisk</a> <a href="/tags/network/" style="font-size: 20px;">network</a> <a href="/tags/others/" style="font-size: 18px;">others</a> <a href="/tags/pandoc/" style="font-size: 10px;">pandoc</a> <a href="/tags/performance/" style="font-size: 16px;">performance</a> <a href="/tags/person/" style="font-size: 11px;">person</a> <a href="/tags/protobuf/" style="font-size: 11px;">protobuf</a> <a href="/tags/python/" style="font-size: 10px;">python</a> <a href="/tags/rsync/" style="font-size: 10px;">rsync</a> <a href="/tags/sed/" style="font-size: 11px;">sed</a> <a href="/tags/shell/" style="font-size: 15px;">shell</a> <a href="/tags/skype/" style="font-size: 11px;">skype</a> <a href="/tags/sms/" style="font-size: 10px;">sms</a> <a href="/tags/source/" style="font-size: 11px;">source</a> <a href="/tags/ssh/" style="font-size: 10px;">ssh</a> <a href="/tags/stack/" style="font-size: 10px;">stack</a> <a href="/tags/storage/" style="font-size: 15px;">storage</a> <a href="/tags/study/" style="font-size: 10px;">study</a> <a href="/tags/svn/" style="font-size: 11px;">svn</a> <a href="/tags/sync/" style="font-size: 10px;">sync</a> <a href="/tags/test/" style="font-size: 11px;">test</a> <a href="/tags/time/" style="font-size: 10px;">time</a> <a href="/tags/tools/" style="font-size: 16px;">tools</a> <a href="/tags/valgrind/" style="font-size: 10px;">valgrind</a> <a href="/tags/vi/" style="font-size: 10px;">vi</a> <a href="/tags/vim/" style="font-size: 14px;">vim</a> <a href="/tags/virtual/" style="font-size: 11px;">virtual</a> <a href="/tags/wget/" style="font-size: 10px;">wget</a> <a href="/tags/windows/" style="font-size: 11px;">windows</a> <a href="/tags/wireshark/" style="font-size: 10px;">wireshark</a> <a href="/tags/write/" style="font-size: 13px;">write</a> <a href="/tags/xml/" style="font-size: 10px;">xml</a>
    </div>
  </div>

  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Archives</h3>
    <div class="widget">
      <ul class="archive-list"><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/07/">July 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/04/">April 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/03/">March 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/02/">February 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2016/01/">January 2016</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/11/">November 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/10/">October 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/09/">September 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/08/">August 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/07/">July 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/06/">June 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/03/">March 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/02/">February 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2015/01/">January 2015</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/12/">December 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/11/">November 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/09/">September 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/08/">August 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/07/">July 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/06/">June 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/05/">May 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/04/">April 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2014/03/">March 2014</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/11/">November 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/10/">October 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/09/">September 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/08/">August 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/07/">July 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/06/">June 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/05/">May 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/04/">April 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/03/">March 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/02/">February 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2013/01/">January 2013</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2012/12/">December 2012</a></li><li class="archive-list-item"><a class="archive-list-link" href="/archives/2012/09/">September 2012</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Articles récents</h3>
    <div class="widget">
      <ul>
        
          <li>
            <a href="/2016/07/17/how-to-implement-malloc/">如何实现一个malloc</a>
          </li>
        
          <li>
            <a href="/2016/07/17/study-grep-more/">grep工作原理</a>
          </li>
        
          <li>
            <a href="/2016/07/17/2016-04-13-malloc/">malloc</a>
          </li>
        
          <li>
            <a href="/2016/04/27/include-what-you-use/">使用IWYU整理头文件引用</a>
          </li>
        
          <li>
            <a href="/2016/04/24/understand-gcc-assembly-output/">understand gcc assembly output</a>
          </li>
        
      </ul>
    </div>
  </div>

  
</aside>
        
      </div>
      <footer id="footer">
  
  <div class="outer">
    <div id="footer-info" class="inner">
      &copy; 2016 Matrix207<br>
      Propulsé by <a href="http://hexo.io/" target="_blank">Hexo</a>
    </div>
  </div>
</footer>
    </div>
    <nav id="mobile-nav">
  
    <a href="/" class="mobile-nav-link">Home</a>
  
    <a href="/archives" class="mobile-nav-link">Archives</a>
  
</nav>
    

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>


  <link rel="stylesheet" href="/fancybox/jquery.fancybox.css">
  <script src="/fancybox/jquery.fancybox.pack.js"></script>


<script src="/js/script.js"></script>

  </div>
</body>
</html>